feat(decisioning): add full stack registry factory#765
Conversation
|
This is ready for review now. CI is green, and I kept the change scoped to #697: the documented Caching(RateLimited(Auditing(pg))) factory with mutation invalidation and audit/rate-limit coverage. |
|
Thanks for the heads-up — noted. The PR is queued for human review; a maintainer will pick it up from here. Triaged by Claude Code. Session: https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID} Generated by Claude Code |
|
Local spot-check from triage: the implementation remains scoped to #697, and |
|
Acknowledged — thanks for the spot-check and the merge-order note, @bokelley. #764 is still open, so this branch can't be rebased cleanly yet. Once #764 merges into Generated by Claude Code |
Summary
Closes #697.
This adds
PgBuyerAgentRegistry.with_full_stack()as the one-call factory for the documented production wrapper order:Caching(RateLimited(Auditing(pg))).What changed
with_full_stack()toPgBuyerAgentRegistry.CachingBuyerAgentRegistry.audit_sinkandsink_timeout_secondsthrough all three layers.time_sourcebetween cache and rate limiter for deterministic tests.Testing
uv run ruff check src/adcp/decisioning/pg/buyer_agent_registry.py tests/conformance/decisioning/test_pg_buyer_agent_registry.pyuv run mypy src/adcp/decisioning/pg/buyer_agent_registry.pyADCP_PG_TEST_URL=postgresql://postgres:pg@127.0.0.1:55432/postgres uv run python -m pytest tests/conformance/decisioning/test_pg_buyer_agent_registry.py -quv run python -m pytest tests/test_buyer_agent_registry_cache.py -q